package ${packagePath};

import ${extEntityBaseClassNamePackage}.${extEntityBaseClassName};
import com.ffcs.crmd.platform.core.ddd.repository.RepositoryRegister;
import com.ctg.itrdc.platform.pub.annotations.ShardingId;
import ${repoPackage}.I${className}Repository;
import java.sql.Timestamp;
import com.mysql.jdbc.Clob;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
${importInfo}

${shardingBean}
@Table(name = "${tableName}")
public class ${className} extends ${extEntityBaseClassName}<${pkType}> {

	private static final long serialVersionUID = -2811347047325737314L;

${entityInfo}

	public ${pkType} getId() {
		return ${pkAttr};
	}

	public void setId(${pkType} id) {
		this.${pkAttr} = id;
	}
	
	public ${className}() {
		super();
    }

    public ${className}(boolean genId) {
        if (genId) {
			setId(genEnttId());
		}
    }

	public static I${className}Repository repository() {
		return (I${className}Repository) RepositoryRegister.getInstance()
				.getRepository(${className}.class);
	}
	
}
